#include <iostream>
#include <thread>
#include "zmq.hpp"
#include "zmq_addon.hpp"

int main()
{
    zmq::message_t msg;

    zmq::context_t zmq_context(1);                   //获取zmq上下文
    zmq::socket_t zmq_socket(zmq_context,ZMQ_PUB);   //创建ZMQ_PUB模式的socket
    zmq_socket.bind("tcp://*:5556");                 //绑定端口号
//    zmq_socket.set(zmq::sockopt::subscribe, "333");

    std::string send_str = "hello world!";
    msg.rebuild(send_str.data(), send_str.size());

    while(1)
    {
       // zmq_socket.send(zmq::buffer(send_str), zmq::send_flags::none);
        msg.rebuild(send_str.data(), send_str.size());

        zmq_socket.send(msg, zmq::send_flags::none);
        std::this_thread::sleep_for(std::chrono::milliseconds(2000));
    }

    zmq_socket.close();
    zmq_context.close();
    return 0;
}



//
//#include <iostream>
//#include <unistd.h>
//#include "zmq.hpp"
//
//int main() {
//    zmq::context_t zmq_context(1);                   //获取zmq上下文
//    zmq::socket_t socket(zmq_context, ZMQ_PUB);   //创建ZMQ_PUB模式的socket
//    socket.bind("tcp://127.0.0.1:5556");                 //绑定端口号
//    std::string data = "hello world!";
//
//    while (1) {
//        socket.send(zmq::buffer(data), zmq::send_flags::none);
//        sleep(1);
//    }

//    socket.close();
//    return 0;
//}